#ifndef EVENT_H
#define EVENT_H

#include <SDL/SDL.h>

class Event
{
private:
    bool m_consumed;
   
    Uint32 m_timeOccurred;
   
public:
    
    Event();
    
    
    virtual ~Event();
    
    
    /**
     * Marks this event as consumed.
     */
    
    void Consume();
    
    
    /**
     * Indicates if the event is consumed or not.
     * 
     * @return true: if event is consumed
     *         false: otherwise
     */
    
    bool IsConsumed() const;
    
    
    /**
     * Returns ticks of when the event occurred
     * 
     * @return total ticks since engine start.
     */
    
    Uint32 GetTimeOccurred() const;
};

#endif